From: Florian Müllner Date: Tue, 31 Aug 2021 11:06:22 +0000 (+0200) Subject: ci: Add dist job X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~574^2^2~19 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=e9d646860926daf25598778b28a2ac340674c38a;p=gnome-shell.git ci: Add dist job So far, releases are done locally by invoking `meson dist`. We can do better and leverage the existing CI infrastructure, to get to the following release workflow: - bump version in meson.build, update NEWS etc. - open merge request for the release - merge when the pipeline (including dist check) succeeds - tag the release - wait for the tag pipeline to spit out the tarball artifact Part-of: --- diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cfa438ae0..b12270835 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -31,7 +31,7 @@ variables: LINT_LOG: "eslint-report.xml" LINT_MR_LOG: "eslint-mr-report.xml" -image: registry.gitlab.gnome.org/gnome/mutter/fedora/34:x86_64-2021-08-25.0 +image: registry.gitlab.gnome.org/gnome/mutter/fedora/34:x86_64-2021-09-04.1 workflow: rules: @@ -259,3 +259,30 @@ nightly: extends: '.publish_nightly' variables: BUNDLES: '$BUNDLE' + +dist: + variables: + XDG_RUNTIME_DIR: "$CI_PROJECT_DIR/runtime-dir" + NO_AT_BRIDGE: "1" + stage: deploy + needs: ["build"] + before_script: + - meson install -C mutter/build + - mkdir -m 700 $XDG_RUNTIME_DIR + script: + - dbus-run-session xvfb-run meson dist -C build + rules: + - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' + changes: + - "**/meson.build" + - meson/* + + +dist-tarball: + extends: dist + artifacts: + expose_as: 'Get tarball here' + paths: + - build/meson-dist/$CI_PROJECT_NAME-$CI_COMMIT_TAG.tar.xz + rules: + - if: '$CI_COMMIT_TAG'